//
// C++ Interface: hbox
//
// Description: 
//
//
// Author: Os3 s.r.l. <xgui@os3.it>, (C) 2005
//
// Copyright: See COPYING file that comes with this distribution
//
//

namespace xgui
{ 
    %feature("docstring","derives from :class:`xgui.ContainerClass` ") HBoxClass;
	struct HBoxClass : public xgui::ContainerClass
	{
		HBoxClass();
		std::string const &className();
		bool isInstanceable();
		xgui::Object * create(xgui::Object * parent, xgui::StringMap &properties);

		virtual bool canContain(xgui::ClassInfo * c);
	};
	
    %feature("docstring","**DESCRIPTION**\n\n The HBox is an horizontal box widget\n\n**PROPERTIES**\n\n * **space** *(RW)* sets or retrieves the border space in pixels.\n\n * **border** *(RW)* if set to *\"1\"* the HBox is sorrounded by a border, if set to *\"0\"* no border is displayed. *default: \"0\"*\n\n**EVENTS**\n\nnone.\n\n**PUSHED PROPERTIES** *(properties registered on all children)*\n\n * **expand** *(RW)* sets or retrieves the expansion mode for the child. See also :meth:`xgui.HBox.setExpand()` method.\n\n**METHODS**\n\n") HBox;
	class HBox : public xgui::Container
	{
		protected:
			HBox(xgui::Container * parent, int space, bool border);
			virtual ~HBox();

		public:
		    %feature("docstring","sets the expansion mode for a HBox child specified by <w>.Children are always vertically expanded.If <expand> is set to 0.0 the child is not horizontally expanded.\nIf set to 1.0 the child is expanded with a ratio based on its minimum horizontal size.\n\n*C++*::\n\n void setExpand(xgui::Widget * w, float expand);\n\n") setExpand;
			void setExpand(xgui::Widget * w, float expand);
			%feature("docstring","returns the expansion mode set by the :meth:`xgui.HBox.setExpand()` method for the specified HBox child.\n\n*C++*::\n\n void setExpand(xgui::Widget * w, float expand);\n\n") getExpand;
			float getExpand(xgui::Widget * w);
	};
}

%extend xgui::HBox {
	%pythoncode {
		def __del__(self):
			if self.valid: self.delPyOwner(self)
	}
}

